﻿using System;
using System.IO;

// Token: 0x020002D7 RID: 727
[Serializable]
public abstract class CharFileInfoParameter : global::BlockControlBase
{
	// Token: 0x060011A3 RID: 4515 RVA: 0x0008FEC8 File Offset: 0x0008E0C8
	public CharFileInfoParameter() : base("パラメータ情報", 5)
	{
		this.MemberInitialize();
	}

	// Token: 0x060011A4 RID: 4516 RVA: 0x0008FEDC File Offset: 0x0008E0DC
	public void MemberInitialize()
	{
	}

	// Token: 0x060011A5 RID: 4517 RVA: 0x0008FEE0 File Offset: 0x0008E0E0
	public override byte[] SaveBytes()
	{
		byte[] result;
		using (MemoryStream memoryStream = new MemoryStream())
		{
			using (BinaryWriter binaryWriter = new BinaryWriter(memoryStream))
			{
				this.SaveSub(binaryWriter);
				result = memoryStream.ToArray();
			}
		}
		return result;
	}

	// Token: 0x060011A6 RID: 4518 RVA: 0x0008FF50 File Offset: 0x0008E150
	public override bool LoadBytes(byte[] data, int parameterVer)
	{
		bool result;
		using (MemoryStream memoryStream = new MemoryStream(data))
		{
			using (BinaryReader binaryReader = new BinaryReader(memoryStream))
			{
				result = this.LoadSub(binaryReader, parameterVer);
			}
		}
		return result;
	}

	// Token: 0x060011A7 RID: 4519
	public abstract bool SaveSub(BinaryWriter bw);

	// Token: 0x060011A8 RID: 4520
	public abstract bool LoadSub(BinaryReader br, int statusVer);

	// Token: 0x040017D3 RID: 6099
	public int parameterLoadVersion;
}
